The present invention relates to the transmission of information through communication networks. More particularly, the present invention regards methods and devices for encapsulating control information in a real-time data stream.
There is considerable interest in the transport of real-time data streams over Virtual Circuit (VC) communication networks. In a VC communication network, two remote users are linked by a logical or simulated circuit between them, a simulated circuit that behaves like a hard wired circuit directly linking the two remote users. Once this virtual circuit is established the two remote users are free to communicate over the network in an efficient and effective manner. Virtual circuit networks include Asynchronous Transfer Mode (ATM) based networks.
ATM networks employ a network transmission protocol that utilizes individual cells of information to compose packets, called information frames, used to transmit an information stream over a network. These packets or information frames need not be sent in synchronization with a system clock, but may be sent at random intervals over the network. Not needing a synchronization clock to time the beginning and end of each transmission frame, each frame is designed to contain start and stop codes to facilitate their use by the end user. An advantage of this non-synchronized or asynchronous transmission method is that it can efficiently utilize network resources by filling voids in the data streaming over the network.
In order to implement this asynchronous transfer of information, several protocols have been developed to standardize the transmission and receipt of information frames over an ATM network. Two of these protocols are ATM Adaptation Layer 5 (AAL5) and ATM Adaptation Layer 2 (AAL2). The AAL5protocol utilizes a standard information frame and is favored for encapsulating voice in the voice over ATM desktop activity while the AAL2 Adaptation Layer also utilizes a standard information frame but is favored for multiplexing several voice streams over an ATM virtual circuit.
A third type of protocol, Internet Protocol (IP), also exists for transmissions of data. When data, such as audible speech, is sent over an Internet Protocol (IP) based network the voice information is also sampled and packetized into information frames for transport over the network. These information frames are encoded with three layers of headers. These headers carry control information used in the interpretation and reconstruction of the information streams back into their original state. The three headers employed are: (a) a Real-Time Transport Protocol (RTP) header; (b) a User Datagram Protocol (UDP) header; and, (c) an Internet Protocol (IP) header. Together they are designated as the RTP/UDP/IP header. These RTP/UDP/IP headers are appended to each packet.
In a transmission over an IP network it is not unusual for the RTP/UDP/IP header to remain unchanged between packets carrying the real-time information over the network. Not until new control information needs to be sent will some of the header information change from the previously sent packet. This known method of re-sending unchanged header information is wasteful and repetitive as it overloads network resources and relegates the receiving user to read and interpret the same header information over and over again. In sum, in an IP network, even though most of the RTP/UDP/IP header information from the previous packet has not changed, the RTP/UPD/IP header information is nevertheless appended to the data packet, transmitted over the network, received by the receiving user, and read by the user.
In addition to the repetitive nature of the transmission of RTP/UDP/IP headers in an IP network, the headers size, as noted, unnecessarily burdens the network infra-structure and reduces its efficiency. For example, when the header information in a packet is large in comparison to the data information being sent, as is typical in an IP transmission frame carrying an RTP/UDP/IP header, network resources are inefficiently spent. Given a typical header size of 40 bytes and a payload size of 40 bytes a network would be operating at a 50% efficiency carrying this information. In other words, half of the networks resources are spent moving control data around and through it.
Therefore, it can be appreciated that a substantial need exists for a Virtual Circuit encapsulation format that supports real-time data without the inefficiencies of the known processes; one that can utilize existing network resources in a more efficient and effective manner during the transmission of real-time data.
The present invention includes a method and apparatus for reducing the amount of information carried in a stream of packets over a virtual circuit network. In one embodiment a method of encapsulating data in an information frame is provided. This information frame has a payload portion and a trailer portion wherein the trailer portion is designated for control data and the payload portion is designated for real-time data. In use control data is inserted into the payload portion of the information frame and an extension bit is used to signify the presence of control data in the payload portion of the information frame. The information frame is then transmited over a virtual circuit.
In an alternative embodiment of the present invention an information frame compressor, for use in a virtual circuit network for sending information frames between an information frame compressor and an information frame de-compressor, is provided. This alternative embodiment includes a first interface and an encapsulation unit in communication with this first interface. This encapsulation unit is configured to place the real-time information in a payload portion of an information frame, and when necessary to place an extension bit in an extension bit field in a trailer portion of the information frame and to place control information into the payload portion of the information frame. This alternative embodiment also includes a second interface coupled to the encapsulation unit and configured to transmit the information frame over a virtual circuit.